; Produced by NeoJasminVisitor (tinapoc)
; http://tinapoc.sourceforge.net
; The original JasminVisitor is part of the BCEL
; http://jakarta.apache.org/bcel/
; Mon Oct 10 01:26:24 CEST 2011

.bytecode 50.0
.source lambda.ml
.class public final ocaml/compilers/Lambda
.super java/lang/Object




.method public static fun_1095(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/remove_194(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1092(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/remove_194(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1089(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/remove_194(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static samecase_495(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 5
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label2 to Label3
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3

    
    Label2:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label0
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label1

    Label0:
    iconst_0

    Label1:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;

    Label3:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static name_list_510(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 7
    .limit locals 7
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label22 to Label21
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label21
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label21
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label21

    
    Label22:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label1
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            Label2
            default: Label20

    Label0:
    aload_0
    aload_0
    aload_1
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/rev_append_79(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V

    Label23:
    areturn

    Label2:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Ident/create_72(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    aload 6
    aload 5
    aload_0
    aload 6
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/name_list_510(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label1:
    aconst_null
    aload 5
    aload_1
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    astore_3
    astore_2
    astore_1
    pop
    goto Label22

    Label20:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label21:
    goto Label23

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1069(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1072(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1066(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static free_659(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 7
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label28 to Label29
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label28 to Label29
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label28 to Label29

    
    Label28:
    aload_0
    aload_2
    aload_1
    invokestatic ocaml/compilers/Lambda/iter_518(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/fold_right_112(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label0
            Label0
            Label3
            Label4
            Label5
            Label0
            Label0
            Label0
            Label9
            Label4
            Label0
            Label0
            Label0
            Label14
            Label15
            Label0
            Label0
            Label0
            default: Label19

    Label0:
    goto Label20

    Label15:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/add_125(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label14:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/remove_194(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label4:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/remove_194(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label9:
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1095"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label5:
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1092"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label3:
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1089"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label21:
    areturn

    Label20:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label29:
    goto Label21

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1100(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 3
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label22 to Label20
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label20

    
    Label22:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            default: Label19

    Label1:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label0:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label20:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static fun_1103(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 3
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label48 to Label49
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label48 to Label49

    
    Label48:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label16
            Label0
            Label0
            default: Label19

    Label0:
    goto Label20

    Label16:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/notEqualValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label21
    goto Label22

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label46:
    areturn

    Label22:
    goto Label20

    Label21:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label24
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            Label25
            default: Label43

    Label25:
    goto Label20

    Label24:
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label45

    Label43:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label45:
    goto Label46

    Label20:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label49:
    goto Label46

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static subst_case_734(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush -6
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static subst_decl_733(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush -3
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 8
    .limit locals 6
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label47 to Label48
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label47 to Label48
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label47 to Label48

    
    Label47:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label1
            Label2
            Label3
            Label4
            Label5
            Label6
            Label7
            Label8
            Label9
            Label10
            Label11
            Label12
            Label13
            Label14
            Label15
            Label16
            Label17
            Label18
            default: Label19

    Label18:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 18
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label17:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    bipush 17
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label16:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 16
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label15:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 15
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label14:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 14
    iconst_5
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createValues(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldValues4(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldValues1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnValues(Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label13:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 13
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label12:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 12
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label11:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 11
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label10:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 10
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label9:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 9
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label8:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 8
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label7:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 6
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 6
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label31
    goto Label32

    Label6:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 6
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label5:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_5
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label4:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label3:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label2:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_2
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/map_90(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_2
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label1:
    aload_1
    goto Label20

    Label0:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Ident/find_same_185(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label54:
    goto Label39

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label20:
    areturn

    Label55:
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/Fail$Exception/asValue(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    ldc_w "caml_exn_Not_found"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/equalValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label40
    goto Label41

    Label39:
    goto Label20

    Label41:
    aload_1
    goto Label39

    Label40:
    aload 4
    invokestatic fr/x9c/cadmium/kernel/Fail/raise(Lfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    goto Label39

    Label32:
    aload_0
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label45

    Label31:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label45:
    iconst_0
    iconst_5
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createValues(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldValues4(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldValues1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnValues(Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Values;)Lfr/x9c/cadmium/kernel/Value;
    bipush 7
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;

    Label48:
    goto Label20

.catch fr/x9c/cadmium/kernel/Fail$Exception from Label0 to Label54 using Label55
    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static sameswitch_390(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 8
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label21 to Label18
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label21 to Label18
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label21 to Label18
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label21 to Label18

    
    Label21:
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore 4
    aload 4
    dup
    dup
    bipush -3
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.TWO Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    iconst_2
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "samecase_495"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload 4
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush -8
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_3
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/equalValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/equalValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label1
    goto Label2

    Label0:
    iconst_0

    Label5:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    areturn

    Label2:
    aload_0
    aload 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label3
    goto Label4

    Label1:
    iconst_0

    Label8:
    goto Label5

    Label4:
    aload_0
    aload 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label6
    goto Label7

    Label3:
    iconst_0

    Label10:
    goto Label8

    Label7:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 7
    goto Label9

    Label6:
    iconst_0

    Label16:
    goto Label10

    Label9:
    aload 6
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label11
    aload 7
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label12
    goto Label13

    Label11:
    aload 7
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label14
    goto Label15

    Label14:
    iconst_1

    Label17:
    goto Label16

    Label15:
    iconst_0
    goto Label17

    Label13:
    aload_0
    aload 6
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload 7
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush -8
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label18

    Label12:
    goto Label15

    Label18:
    goto Label17

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static samebinding_389(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 7
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label2 to Label3
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label2 to Label3

    
    Label2:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label0
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush -4
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label1

    Label0:
    iconst_0

    Label1:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;

    Label3:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 7
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label545 to Label546
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label545 to Label546
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label545 to Label546
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label545 to Label546

    
    Label545:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label1
            Label2
            Label3
            Label4
            Label5
            Label6
            Label7
            Label8
            Label9
            Label10
            Label11
            Label12
            Label13
            Label14
            Label15
            Label16
            Label17
            Label18
            default: Label19

    Label18:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label20
            Label38
            default: Label39

    Label17:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label40
            Label57
            Label40
            default: Label59

    Label16:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label60
            Label76
            Label60
            Label60
            default: Label79

    Label15:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label80
            Label95
            Label80
            Label80
            Label80
            default: Label99

    Label14:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label100
            Label114
            Label100
            Label100
            Label100
            Label100
            default: Label119

    Label13:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label120
            Label133
            Label120
            Label120
            Label120
            Label120
            Label120
            default: Label139

    Label12:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            Label152
            Label140
            Label140
            Label140
            Label140
            Label140
            Label140
            default: Label159

    Label11:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label171
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            Label160
            default: Label179

    Label10:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label190
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            Label180
            default: Label199

    Label9:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label209
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            Label200
            default: Label219

    Label8:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label228
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            Label220
            default: Label239

    Label7:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label247
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            Label240
            default: Label259

    Label6:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label266
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            Label260
            default: Label279

    Label5:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label280
            Label280
            Label280
            Label280
            Label280
            Label285
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            Label280
            default: Label299

    Label4:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label300
            Label300
            Label300
            Label300
            Label304
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            Label300
            default: Label319

    Label3:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label320
            Label320
            Label320
            Label323
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            Label320
            default: Label339

    Label2:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label340
            Label340
            Label342
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            Label340
            default: Label359

    Label1:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label360
            Label361
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            Label360
            default: Label379

    Label0:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label380
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            Label381
            default: Label399

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label402:
    areturn

    Label381:
    goto Label400

    Label380:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label401

    Label399:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label401:
    goto Label402

    Label400:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    goto Label402

    Label360:
    goto Label400

    Label361:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label405

    Label379:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label405:
    goto Label402

    Label340:
    goto Label400

    Label342:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label408
    goto Label409

    Label359:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label412:
    goto Label402

    Label409:
    aload_0
    aload_3
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label411

    Label408:
    iconst_0

    Label411:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label412

    Label320:
    goto Label400

    Label323:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label414
    goto Label415

    Label339:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label419:
    goto Label402

    Label415:
    aload_0
    aload_0
    ldc_w "Ident"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 9
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label417
    goto Label418

    Label414:
    iconst_0

    Label421:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label419

    Label418:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label420

    Label417:
    iconst_0

    Label420:
    goto Label421

    Label300:
    goto Label400

    Label304:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label423
    goto Label424

    Label319:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label428:
    goto Label402

    Label424:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label426
    goto Label427

    Label423:
    iconst_0

    Label431:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label428

    Label427:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label429
    goto Label430

    Label426:
    iconst_0

    Label433:
    goto Label431

    Label430:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label432

    Label429:
    iconst_0

    Label432:
    goto Label433

    Label280:
    goto Label400

    Label285:
    aload_0
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label435
    goto Label436

    Label299:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label439:
    goto Label402

    Label436:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label438

    Label435:
    iconst_0

    Label438:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label439

    Label260:
    goto Label400

    Label266:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label441
    goto Label442

    Label279:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label445:
    goto Label402

    Label442:
    aload_0
    aload_3
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label444

    Label441:
    iconst_0

    Label444:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label445

    Label240:
    goto Label400

    Label247:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label447
    goto Label448

    Label259:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label451:
    goto Label402

    Label448:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/sameswitch_390(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label450

    Label447:
    iconst_0

    Label450:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label451

    Label220:
    goto Label400

    Label228:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/equalValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label453
    goto Label454

    Label239:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label457:
    goto Label402

    Label454:
    aload_0
    aload_3
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label456

    Label453:
    iconst_0

    Label456:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label457

    Label200:
    goto Label400

    Label209:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label459
    goto Label460

    Label219:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label464:
    goto Label402

    Label460:
    aload 6
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/equalValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label462
    goto Label463

    Label459:
    iconst_0

    Label467:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label464

    Label463:
    aload_0
    aload_0
    ldc_w "Ident"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 9
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload 6
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label465
    goto Label466

    Label462:
    iconst_0

    Label469:
    goto Label467

    Label466:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label468

    Label465:
    iconst_0

    Label468:
    goto Label469

    Label180:
    goto Label400

    Label190:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label471
    goto Label472

    Label199:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label476:
    goto Label402

    Label472:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label474
    goto Label475

    Label471:
    iconst_0

    Label478:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label476

    Label475:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label477

    Label474:
    iconst_0

    Label477:
    goto Label478

    Label160:
    goto Label400

    Label171:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label480
    goto Label481

    Label179:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label485:
    goto Label402

    Label481:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label483
    goto Label484

    Label480:
    iconst_0

    Label487:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label485

    Label484:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label486

    Label483:
    iconst_0

    Label486:
    goto Label487

    Label140:
    goto Label400

    Label152:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label489
    goto Label490

    Label159:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label493:
    goto Label402

    Label490:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label492

    Label489:
    iconst_0

    Label492:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label493

    Label120:
    goto Label400

    Label133:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label495
    goto Label496

    Label139:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label499:
    goto Label402

    Label496:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label498

    Label495:
    iconst_0

    Label498:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label499

    Label100:
    goto Label400

    Label114:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label501
    goto Label502

    Label119:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label506:
    goto Label402

    Label502:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label504
    goto Label505

    Label501:
    iconst_0

    Label509:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label506

    Label505:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label507
    goto Label508

    Label504:
    iconst_0

    Label512:
    goto Label509

    Label508:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label510
    goto Label511

    Label507:
    iconst_0

    Label514:
    goto Label512

    Label511:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label513

    Label510:
    iconst_0

    Label513:
    goto Label514

    Label80:
    goto Label400

    Label95:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label516
    goto Label517

    Label99:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label520:
    goto Label402

    Label517:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label519

    Label516:
    iconst_0

    Label519:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label520

    Label60:
    goto Label400

    Label76:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label522
    goto Label523

    Label79:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label527:
    goto Label402

    Label523:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label525
    goto Label526

    Label522:
    iconst_0

    Label530:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label527

    Label526:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label528
    goto Label529

    Label525:
    iconst_0

    Label532:
    goto Label530

    Label529:
    aload_0
    aload_3
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/samelist_98(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label531

    Label528:
    iconst_0

    Label531:
    goto Label532

    Label40:
    goto Label400

    Label57:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label534
    goto Label535

    Label59:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label538:
    goto Label402

    Label535:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label537

    Label534:
    iconst_0

    Label537:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label538

    Label38:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload 6
    aload 5
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label539
    goto Label540

    Label20:
    goto Label400

    Label39:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label544:
    goto Label402

    Label540:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    invokestatic ocaml/compilers/Lambda/same_388(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    goto Label543

    Label539:
    iconst_0

    Label543:
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;

    Label546:
    goto Label544

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static name_lambda_502(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 5
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label22 to Label20
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label20
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label22 to Label20

    
    Label22:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            default: Label19

    Label1:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Ident/create_72(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    aload 4
    aload_1
    aload_0
    aload 4
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label0:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label20:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static name_lambda_list_507(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 5
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    dup
    bipush -3
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.TWO Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    iconst_2
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "name_list_510"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_2
    iconst_3
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_0
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    aload_1
    aload 4
    invokestatic ocaml/compilers/Lambda/name_list_510(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static iter_518(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 6
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label38 to Label36
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label38 to Label36
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label38 to Label36

    
    Label38:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label0
            Label2
            Label3
            Label4
            Label5
            Label6
            Label7
            Label6
            Label9
            Label9
            Label11
            Label12
            Label12
            Label14
            Label15
            Label16
            Label17
            Label15
            default: Label19

    Label15:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label17:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label16:
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label14:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label12:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label11:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label9:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label6:
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label7:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1069"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_1
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1072"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_1
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    pop
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label28
    goto Label29

    Label5:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1066"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_1
    iconst_2
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label4:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label3:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label20

    Label2:
    aload_0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    pop
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/List/iter_102(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label0:
    goto Label34

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label20:
    areturn

    Label34:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    goto Label20

    Label29:
    aload_0
    aload 5
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    goto Label36

    Label28:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label36:
    goto Label20

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static free_ids_655(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 6
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "free_659"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_3
    aload_1
    aload 4
    iconst_2
    iconst_2
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure2(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_0
    aload_2
    aload 5
    invokestatic ocaml/compilers/Lambda/free_659(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    pop
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static free_variables_687(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1100"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokestatic ocaml/compilers/Lambda/free_ids_655(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static free_methods_690(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "fun_1103"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    invokestatic ocaml/compilers/Lambda/free_ids_655(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static next_raise_count_695(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 3
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 24
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    dup
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/getRawValue()I
    iconst_2
    iadd
    invokestatic fr/x9c/cadmium/kernel/Value/createFromRawValue(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 24
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static is_guarded_697(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 3
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label52 to Label53
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label52 to Label53

    
    Label52:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label0
            Label0
            Label0
            Label4
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label11
            Label0
            Label0
            Label0
            Label0
            Label0
            Label17
            Label0
            default: Label19

    Label0:
    goto Label20

    Label17:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/is_guarded_697(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label11:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label30
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            default: Label41

    Label4:
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/is_guarded_697(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label21:
    areturn

    Label22:
    goto Label20

    Label30:
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/notEqualValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label44
    goto Label45

    Label41:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label50:
    goto Label21

    Label45:
    goto Label20

    Label44:
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label48
    goto Label20

    Label48:
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    goto Label50

    Label20:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label53:
    goto Label21

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static patch_guarded_706(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 7
    .limit locals 5
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label52 to Label53
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label52 to Label53
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label52 to Label53

    
    Label52:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label0
            Label0
            Label0
            Label4
            Label0
            Label0
            Label0
            Label0
            Label0
            Label0
            Label11
            Label0
            Label0
            Label0
            Label0
            Label0
            Label17
            Label0
            default: Label19

    Label0:
    goto Label20

    Label17:
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/patch_guarded_706(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    bipush 17
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label11:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label30
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            Label22
            default: Label41

    Label4:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/patch_guarded_706(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label21

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label21:
    areturn

    Label22:
    goto Label20

    Label30:
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/notEqualValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label44
    goto Label45

    Label41:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label50:
    goto Label21

    Label45:
    goto Label20

    Label44:
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label48
    goto Label20

    Label48:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    aload_1
    bipush 11
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label50

    Label20:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/fatal_error_59(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label53:
    goto Label21

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static transl_path_716(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label10 to Label8
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label10 to Label8

    
    Label10:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 2
            Label0
            Label1
            Label2
            default: Label3

    Label2:
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_3
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Misc/fatal_error_59(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    goto Label4

    Label1:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/compilers/Lambda/transl_path_716(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    bipush 6
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label4

    Label0:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    iconst_1
    iand
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/notEqualValues(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Z
    ifeq Label6
    goto Label7

    Label3:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label4:
    areturn

    Label7:
    aload_3
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    bipush 6
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label8

    Label6:
    aload_3
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;

    Label8:
    goto Label4

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static make_sequence_723(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 4
    .limit locals 7
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label5 to Label3
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label5 to Label3
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label5 to Label3

    
    Label5:
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label0
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload 4
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label1
    goto Label2

    Label0:
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;

    Label4:
    areturn

    Label2:
    aload_0
    aload 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V
    astore 6
    aload 6
    aload_0
    aload_1
    aload 4
    invokestatic ocaml/compilers/Lambda/make_sequence_723(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    bipush 12
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label3

    Label1:
    aload_0
    aload 5
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/apply1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    aload_0
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/checkSignals()V

    Label3:
    goto Label4

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static subst_lambda_729(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 5
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    bipush 9
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_3
    aload_3
    dup
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "subst_732"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_0
    aload_3
    iconst_2
    ldc_w ocaml/compilers/Lambda
    ldc_w "subst_decl_733"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerInfix1(Lfr/x9c/cadmium/kernel/Block;ILjava/lang/Class;Ljava/lang/String;)V
    aload_0
    aload_3
    iconst_5
    ldc_w ocaml/compilers/Lambda
    ldc_w "subst_case_734"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerInfix1(Lfr/x9c/cadmium/kernel/Block;ILjava/lang/Class;Ljava/lang/String;)V
    aload_3
    aload_1
    bipush 8
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/foldClosure1(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_0
    aload_2
    aload 4
    invokestatic ocaml/compilers/Lambda/subst_732(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static negate_comparison_792(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 1
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label13 to Label7
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label13 to Label7

    
    Label13:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    tableswitch 0 5
            Label0
            Label1
            Label2
            Label3
            Label4
            Label5
            default: Label6

    Label5:
    getstatic fr.x9c.cadmium.kernel.Value.TWO Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label4:
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label3:
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label2:
    iconst_5
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label1:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label0:
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label6:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label7:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static commute_comparison_791(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 1
    .limit locals 3
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label13 to Label7
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label13 to Label7

    
    Label13:
    aload_1
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    tableswitch 0 5
            Label0
            Label1
            Label2
            Label3
            Label4
            Label5
            default: Label6

    Label5:
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label4:
    iconst_5
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label3:
    getstatic fr.x9c.cadmium.kernel.Value.TWO Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label2:
    iconst_3
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label1:
    getstatic fr.x9c.cadmium.kernel.Value.ONE Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label0:
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    goto Label7

    Label6:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label7:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static bind_790(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 5
    .limit locals 7
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label26 to Label23
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label26 to Label23
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label26 to Label23
    .var 3 is arg3 Lfr/x9c/cadmium/kernel/Value; from Label26 to Label23
    .var 4 is arg4 Lfr/x9c/cadmium/kernel/Value; from Label26 to Label23

    
    Label26:
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    invokevirtual fr/x9c/cadmium/kernel/Block/getTag()I
    tableswitch 0 18
            Label0
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            Label1
            default: Label19

    Label1:
    goto Label20

    Label0:
    aload_3
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_0
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    astore 6
    aload_0
    aload_2
    aload 6
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_equal(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asLong()I
    ifeq Label20
    goto Label22

    Label19:
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;

    Label24:
    areturn

    Label22:
    aload 4
    goto Label23

    Label20:
    aload_1
    aload_2
    aload_3
    aload 4
    iconst_4
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    goto Label24

    Label23:
    goto Label24

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static compare_627(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 3
    .limit locals 4
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1
    .var 1 is arg1 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1
    .var 2 is arg2 Lfr/x9c/cadmium/kernel/Value; from Label0 to Label1

    
    Label0:
    aload_0
    aload_1
    aload_2
    invokestatic fr/x9c/cadmium/primitives/stdlib/Compare/caml_compare(Lfr/x9c/cadmium/kernel/CodeRunner;Lfr/x9c/cadmium/kernel/Value;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method



.method public static entry(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;)Lfr/x9c/cadmium/kernel/Value;
    .limit stack 6
    .limit locals 6
    .var 0 is arg0 Lfr/x9c/cadmium/kernel/AbstractNativeRunner; from Label0 to Label1

    
    Label0:
    aload_0
    ldc_w "Lambda"
    bipush 25
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/createGlobal(Ljava/lang/String;I)V
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_1
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_1
    invokevirtual fr/x9c/cadmium/kernel/Block/get(I)Lfr/x9c/cadmium/kernel/Value;
    iconst_1
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    bipush 11
    invokestatic fr/x9c/cadmium/kernel/Block/createClosure(I)Lfr/x9c/cadmium/kernel/Block;
    dup
    dup
    invokevirtual fr/x9c/cadmium/kernel/Block/setCustom(Ljava/lang/Object;)V
    astore_1
    aload_1
    dup
    dup
    bipush -3
    invokevirtual fr/x9c/cadmium/kernel/Block/setCode(I)V
    iconst_1
    getstatic fr.x9c.cadmium.kernel.Value.TWO Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    iconst_2
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "same_388"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure(Ljava/lang/Class;Ljava/lang/String;)I
    invokestatic fr/x9c/cadmium/kernel/Value/createFromLong(I)Lfr/x9c/cadmium/kernel/Value;
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    aload_0
    aload_1
    iconst_3
    ldc_w ocaml/compilers/Lambda
    ldc_w "samebinding_389"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerInfixN(Lfr/x9c/cadmium/kernel/Block;ILjava/lang/Class;Ljava/lang/String;I)V
    aload_0
    aload_1
    bipush 7
    ldc_w ocaml/compilers/Lambda
    ldc_w "sameswitch_390"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerInfixN(Lfr/x9c/cadmium/kernel/Block;ILjava/lang/Class;Ljava/lang/String;I)V
    aload_1
    bipush 11
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createClosureVars(II)Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/returnClosure(Lfr/x9c/cadmium/kernel/Block;Lfr/x9c/cadmium/kernel/AbstractNativeRunner$Closure;)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_0
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 21
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    bipush 8
    invokevirtual fr/x9c/cadmium/kernel/Block/offset(I)Lfr/x9c/cadmium/kernel/Value;
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 22
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "name_lambda_502"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "name_lambda_list_507"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    iconst_4
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "iter_518"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 7
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "compare_627"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_2
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    invokestatic ocaml/stdlib/Set/fun_850(Lfr/x9c/cadmium/kernel/AbstractNativeRunner;Lfr/x9c/cadmium/kernel/Value;)Lfr/x9c/cadmium/kernel/Value;
    astore_2
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_2
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 8
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "free_ids_655"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 23
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "free_variables_687"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 9
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "free_methods_690"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 10
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;
    iconst_0
    invokestatic fr/x9c/cadmium/kernel/AbstractNativeRunner/createBlock(Lfr/x9c/cadmium/kernel/Value;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 24
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "next_raise_count_695"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 17
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    iconst_5
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getConstant(Ljava/lang/Class;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 18
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "is_guarded_697"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 19
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "patch_guarded_706"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 20
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "transl_path_716"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 11
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "make_sequence_723"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 12
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "subst_lambda_729"
    iconst_2
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 13
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "bind_790"
    iconst_4
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosureN(Ljava/lang/Class;Ljava/lang/String;I)Lfr/x9c/cadmium/kernel/Value;
    astore_3
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "commute_comparison_791"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore 4
    aload_0
    ldc_w ocaml/compilers/Lambda
    ldc_w "negate_comparison_792"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/registerClosure1(Ljava/lang/Class;Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    astore 5
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload_3
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 14
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload 4
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 15
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    aload_0
    ldc_w "Lambda"
    invokevirtual fr/x9c/cadmium/kernel/AbstractNativeRunner/getGlobal(Ljava/lang/String;)Lfr/x9c/cadmium/kernel/Value;
    aload 5
    swap
    invokevirtual fr/x9c/cadmium/kernel/Value/asBlock()Lfr/x9c/cadmium/kernel/Block;
    swap
    bipush 16
    swap
    invokevirtual fr/x9c/cadmium/kernel/Block/set(ILfr/x9c/cadmium/kernel/Value;)V
    getstatic fr.x9c.cadmium.kernel.Value.UNIT Lfr/x9c/cadmium/kernel/Value;
    pop
    getstatic fr.x9c.cadmium.kernel.Value.ZERO Lfr/x9c/cadmium/kernel/Value;

    Label1:
    areturn

    .throws fr/x9c/cadmium/kernel/Fail$Exception
    .throws fr/x9c/cadmium/kernel/Fatal$Exception
.end method
